package org.edu.modules.lesson.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;

@TableName("ve_cuz_lesson_category")
@ApiModel(value="ve_cuz_lesson_category对象", description="栏目管理")
public class VeCuzLessonCategory
        implements Serializable
{
    private static final long serialVersionUID = 1L;
    @TableId(type=IdType.AUTO)
    @ApiModelProperty("id")
    private Integer id;
    @ApiModelProperty("栏目名称")
    private String title;
    @ApiModelProperty("类型(Page单页面，Article信息列表，Video视频列表)")
    private String type;
    @ApiModelProperty("是否有图片0否1是")
    private Integer haspic;
    @ApiModelProperty("是否启用0否1是")
    private Integer status;
    @ApiModelProperty("排序")
    private Integer listsort;
    @ApiModelProperty("课程目录节点ID")
    private Integer nodeid;
    @ApiModelProperty("课程ID")
    private Integer courseid;
    @ApiModelProperty("终端系统ID")
    private Integer terminalid;
    @ApiModelProperty("多租户id")
    private Integer placeId;

    public VeCuzLessonCategory setType(String type)
    {
        this.type = type;return this;
    }

    public VeCuzLessonCategory setTitle(String title)
    {
        this.title = title;return this;
    }

    public VeCuzLessonCategory setId(Integer id)
    {
        this.id = id;return this;
    }

    public String toString()
    {
        return "VeCuzLessonCategory(id=" + getId() + ", title=" + getTitle() + ", type=" + getType() + ", haspic=" + getHaspic() + ", status=" + getStatus() + ", listsort=" + getListsort() + ", nodeid=" + getNodeid() + ", courseid=" + getCourseid() + ", terminalid=" + getTerminalid() + ", placeId=" + getPlaceId() + ")";
    }

    public VeCuzLessonCategory setPlaceId(Integer placeId)
    {
        this.placeId = placeId;return this;
    }

    public VeCuzLessonCategory setTerminalid(Integer terminalid)
    {
        this.terminalid = terminalid;return this;
    }

    public VeCuzLessonCategory setCourseid(Integer courseid)
    {
        this.courseid = courseid;return this;
    }

    public VeCuzLessonCategory setNodeid(Integer nodeid)
    {
        this.nodeid = nodeid;return this;
    }

    public VeCuzLessonCategory setListsort(Integer listsort)
    {
        this.listsort = listsort;return this;
    }

    public VeCuzLessonCategory setStatus(Integer status)
    {
        this.status = status;return this;
    }

    public VeCuzLessonCategory setHaspic(Integer haspic)
    {
        this.haspic = haspic;return this;
    }

    public int hashCode()
    {
        int PRIME = 59;int result = 1;Object $id = getId();result = result * 59 + ($id == null ? 43 : $id.hashCode());Object $haspic = getHaspic();result = result * 59 + ($haspic == null ? 43 : $haspic.hashCode());Object $status = getStatus();result = result * 59 + ($status == null ? 43 : $status.hashCode());Object $listsort = getListsort();result = result * 59 + ($listsort == null ? 43 : $listsort.hashCode());Object $nodeid = getNodeid();result = result * 59 + ($nodeid == null ? 43 : $nodeid.hashCode());Object $courseid = getCourseid();result = result * 59 + ($courseid == null ? 43 : $courseid.hashCode());Object $terminalid = getTerminalid();result = result * 59 + ($terminalid == null ? 43 : $terminalid.hashCode());Object $placeId = getPlaceId();result = result * 59 + ($placeId == null ? 43 : $placeId.hashCode());Object $title = getTitle();result = result * 59 + ($title == null ? 43 : $title.hashCode());Object $type = getType();result = result * 59 + ($type == null ? 43 : $type.hashCode());return result;
    }

    protected boolean canEqual(Object other)
    {
        return other instanceof VeCuzLessonCategory;
    }

    public boolean equals(Object o)
    {
        if (o == this) {
            return true;
        }
        if (!(o instanceof VeCuzLessonCategory)) {
            return false;
        }
        VeCuzLessonCategory other = (VeCuzLessonCategory)o;
        if (!other.canEqual(this)) {
            return false;
        }
        Object this$id = getId();Object other$id = other.getId();
        if (this$id == null ? other$id != null : !this$id.equals(other$id)) {
            return false;
        }
        Object this$haspic = getHaspic();Object other$haspic = other.getHaspic();
        if (this$haspic == null ? other$haspic != null : !this$haspic.equals(other$haspic)) {
            return false;
        }
        Object this$status = getStatus();Object other$status = other.getStatus();
        if (this$status == null ? other$status != null : !this$status.equals(other$status)) {
            return false;
        }
        Object this$listsort = getListsort();Object other$listsort = other.getListsort();
        if (this$listsort == null ? other$listsort != null : !this$listsort.equals(other$listsort)) {
            return false;
        }
        Object this$nodeid = getNodeid();Object other$nodeid = other.getNodeid();
        if (this$nodeid == null ? other$nodeid != null : !this$nodeid.equals(other$nodeid)) {
            return false;
        }
        Object this$courseid = getCourseid();Object other$courseid = other.getCourseid();
        if (this$courseid == null ? other$courseid != null : !this$courseid.equals(other$courseid)) {
            return false;
        }
        Object this$terminalid = getTerminalid();Object other$terminalid = other.getTerminalid();
        if (this$terminalid == null ? other$terminalid != null : !this$terminalid.equals(other$terminalid)) {
            return false;
        }
        Object this$placeId = getPlaceId();Object other$placeId = other.getPlaceId();
        if (this$placeId == null ? other$placeId != null : !this$placeId.equals(other$placeId)) {
            return false;
        }
        Object this$title = getTitle();Object other$title = other.getTitle();
        if (this$title == null ? other$title != null : !this$title.equals(other$title)) {
            return false;
        }
        Object this$type = getType();Object other$type = other.getType();return this$type == null ? other$type == null : this$type.equals(other$type);
    }

    public Integer getId()
    {
        return this.id;
    }

    public String getTitle()
    {
        return this.title;
    }

    public String getType()
    {
        return this.type;
    }

    public Integer getHaspic()
    {
        return this.haspic;
    }

    public Integer getStatus()
    {
        return this.status;
    }

    public Integer getListsort()
    {
        return this.listsort;
    }

    public Integer getNodeid()
    {
        return this.nodeid;
    }

    public Integer getCourseid()
    {
        return this.courseid;
    }

    public Integer getTerminalid()
    {
        return this.terminalid;
    }

    public Integer getPlaceId()
    {
        return this.placeId;
    }
}
